Exercise regime management tool

ABSTRACT

A method is presented for managing an exercise regime. The method may include developing a plan for an exercise regime and transmitting the plan to one or more client computers. The client computer may be associated with a user. The client computer may acquire performance-related data from the user during execution of the plan, and may transmit the acquired data to a server in communication therewith. The server may analyze the performance-related data to verify that predetermined expected performance values are reached, and may modify the plan according to the analysis. The modified plan may then be provided to the client computer.

BACKGROUND OF THE INVENTION

Many training devices exist to help athletes improve their performance. The more innovative of these devices allow athletes to practice against a recorded workout which describes a series of activities to be performed, such as a sequence of distances or times or heart rates. These devices typically include data relating to one or more performance attributes of the athlete during training. These devices also typically include a notification mechanism that signals the athlete that he or she is ahead or behind their desired target values. Some online services also provide tailored training plans.

In any case, such systems typically require a workout to be defined in advance of a training session, and a post-workout analysis to be performed on data acquired from the athlete during training. An exemplary training session is shown in FIG. 1. In this example, the athlete runs a first 1,000 meters at a planned pace. The athlete then begins to experience difficulties maintaining the pace. The athlete's performance worsens during the next 400 meters.

During the training session, the athlete must decide whether to continue to try to follow the predefined training program, or to reduce the pace during the initial 1000 meter distance, or during the subsequent 400 meter distance.

SUMMARY OF THE INVENTION

Embodiments of the invention provide exercise regime management tools.

In one embodiment, a method for managing an exercise regime in accordance with the present invention may include developing a plan for an exercise regime and transmitting the plan to one or more client computers. The client computer may be associated with a user. The client computer may acquire performance-related data from the user during execution of the plan, and may transmit the acquired data to a server in communication therewith. The server may analyze the performance-related data to verify that predetermined expected performance values are reached, and may modify the plan according to the analysis. The modified plan may then be provided to the client computer.

A corresponding computer program product and system are also disclosed and claimed herein.

BRIEF DESCRIPTION OF THE DRAWINGS

In order that the advantages of the disclosure will be readily understood, a more particular description of embodiments of the invention briefly described above will be rendered by reference to specific embodiments illustrated in the appended drawings. Understanding that these drawings depict only typical embodiments of the invention and are not therefore to be considered limiting of its scope, embodiments of the invention will be described and explained with additional specificity and detail through use of the accompanying drawings, in which:

FIG. 1 is a table detailing a sample workout and pace measured during the workout (wherein RP represents an ideal Race Pace);

FIG. 2 is a block diagram of an apparatus in accordance with an embodiment of the invention;

FIG. 3 is a flow chart of a method in accordance with an embodiment of the invention;

FIG. 4 is a block diagram of an apparatus of an alternative embodiment of the invention;

FIG. 5 is a block diagram of notifications to a user during a training session in accordance with embodiments of the invention;

FIG. 6 is a flow chart of a method of an alternative embodiment; and

FIG. 7 is a block diagram of a computer on which embodiments of the invention may operate.

DETAILED DESCRIPTION OF THE INVENTION

It will be readily understood that the components of embodiments of the present invention, as generally described and illustrated in the Figures herein, may be arranged and designed in a wide variety of different configurations. Thus, the following more detailed description of the embodiments of the systems and methods of the present invention, as represented in the Figures, is not intended to limit the scope of the disclosure, as claimed, but is merely representative of selected embodiments of the invention.

Reference throughout this specification to “one embodiment,” “an embodiment,” or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment may be included in at least one embodiment of the present invention. Thus, appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment.

Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. One skilled in the relevant art will recognize, however, that embodiments of the invention can be practiced without one or more of the specific details, or with other methods, components, etc. In other instances, well-known structures, or operations are not shown or described in detail to avoid obscuring aspects of the disclosure.

The illustrated embodiments of the invention will be best understood by reference to the drawings, wherein like parts are designated by like numerals throughout. The following description is intended only by way of example, and simply illustrates certain selected embodiments of the invention that are consistent with the disclosure as claimed herein.

Architecture of the System of a First Embodiment

Referring to FIG. 2, a system 10 of one embodiment of the invention may include a primary database 12 configured to store a profile for each registered user. The system 10 may further include a secondary database 14 configured to store previous values (if available) of the user's performance attributes. Together, the profile and values may form a record of the user's performance history. The system 10 may further include a tertiary database 15 configured to store records of previous workout plans and modifications thereto.

In some embodiments, the system 10 may include a planning module 16 configured to retrieve information from the primary, secondary, and tertiary databases 12, 14, and 15. The planning module 16 may use this information to construct a workout plan for the user. Since thresholds, events, and corrective actions may all be part of a workout plan, the workout plan may be expressed, for instance, in XML format. The system 10 may further include a transmission module 18 which may be configured to transmit the workout plan to a receiver (not shown) of the user. In some embodiments, the receiver may include a wireless receiver. In use, the system 10 may be located in a remote server some distance from the user.

In certain embodiments, the system 10 may further include a data acquisition module 20 configured to receive data relating to predefined performance attributes of the user. The data acquisition module 20 may transmit the acquired data to a comparator 22. The comparator 22 may be configured to compare the acquired values of the performance attributes with desired values for these attributes. The desired values, or target values, may be acquired from the planning module 16.

The system 10 may further include a first feedback loop 24 between the comparator 22 and the planning module 16. A second feedback loop may be interposed between the planning module 16 and the tertiary database 15.

Those skilled in the art will appreciate that the system described above may be organized in other equivalent embodiments, and many changes or modifications may be made to the system without departing from the scope of the present invention. For example, the three databases mentioned above may be included in a single database. Another possible alternative may be to monitor several users at the same time, with the same central system.

Method of Operation of the First Embodiment

Referring now to FIGS. 2 and 3, a method in accordance with an embodiment of the invention may include two phases, namely, a configuration phase and an execution phase. During the configuration phase, a user may register with the system by providing, inter alia, training goals and data relating to various physiological attributes (e.g., age, weight, medical conditions, fat content, medical conditions, etc.). From this information, a profile of the user may be constructed 26 and stored in the primary database 12.

During the execution phase, the method may determine 28 the length of time elapsed since the user last trained. This information may be obtained by asking the user, or by looking at a date stamp of a most recent entry in the secondary database 14, for example. If a record from a previous workout plan for the user is available, the method may retrieve the record. From this information, the method may generate 30 a workout plan for the current training session of the user. The workout plan may include details of target values for specified performance-related variables. The workout plan may also include thresholds for allowable deviations from these target values. The method may then transmit 32 the workout plan to the user.

As the user trains in accordance with the transmitted workout plan, a plurality of sensors in contact with the user (or a device which the user is using) may acquire 34 performance-related data from the user. The data may be transmitted to the data acquisition module 20, which may forward the data to the comparator 22. The comparator 22 may then compare 36 the data with the target values prescribed for the relevant performance-related variables in the current workout plan.

In the event that the acquired data deviates from the target values for a given performance-related variable, the comparator 22 may determine the extent of the deviation and compare it with the prescribed deviation threshold. In the event that the deviation exceeds the threshold, the comparator may transmit, through the feedback loop 24, a flag to this effect to the planning module 16, together with the degree of deviation. On receipt of the flag for a predefined monitoring time interval, the planning module 16 may adjust 38 the workout plan for the user. The planning module 16 may further warn the user that there has been a deviation from the target values, and may notify the user of an imminent change to the workout plan. The planning module 16 may then transmit 42 the adjusted workout plan to the user. Finally, the planning module 16 may store the adjusted workout plan in the tertiary database 15.

The planning module 16 and the comparator 22 may thus collectively provide a dynamic feedback system which monitors the status of a user during training, and adapts the training plan in a dynamic real-time fashion. This dynamic modification may be inherently sensitive and responsive to the physical and environmental conditions experienced by the user.

Architecture of the System of an Alternative Embodiment

In another embodiment, the system may receive input for a workout plan from a trainer. This feature may be particularly useful for specialized or very high-level training for particular sports. In particular, referring now to FIG. 4, an alternative embodiment of the invention may include a system 10 adapted to communicate with a user's device 44 and a trainer's device 46.

The trainer's device 46 may include a workout builder for creating and modifying a workout plan. To this end, the trainer's device 46 may communicate with the planning module of the system 10 to download a workout plan developed by the planning module, modify it in accordance with the specific needs of the user (and relevant sport), and upload the modified workout plan into the planning module of the system 10.

In another embodiment, the trainer may be allowed to intervene directly into the system 10 and prevent the planning module from developing an initial workout plan for the user. Instead, the trainer may implement this process. In particular, the trainer may develop the workout plan and download it directly to the planning module of the system 10. To assist the trainer in modifying or creating the workout plan, the trainer may be provided with access to a history of previous workout plans and acquired performance-related variables in the secondary and tertiary databases.

The trainer's device 46 may also include a workout tracker for monitoring an ongoing workout. The trainer may thus be provided with continuous feedback on the real performance achieved by the user, compared to the user's target performance. The trainer may also be permitted to intervene in a training session and provide a modified workout plan as desired, even if this is not triggered by the conditions used in the comparator of the system 10. To support the above functions, the trainer's device 46 may be provided with internet connectivity for receiving the data collected during the training sessions and for downloading and uploading workout plans.

As previously discussed, in use, external sensors may monitor performance-related variables from the user (e.g., heart rate, speed and distance) during a training session. This data may be acquired and collated by the user's device 44, which may transmit the data to the system 10. To support this activity, the user's device 12 may be provided with internet connectivity. The collected data may be accessed from the system 10 for real-time or post-workout analysis.

This embodiment may also provide a notification service to notify the trainer that the user is starting a training session, as well as to notify the trainer if and when the deviation thresholds for the user's performance-related variables are repeatedly exceeded. In one embodiment, the notifications may be provided through Systems Management Server (“SMS”) messaging. The user's device 44 may include an SMS sender to transmit the relevant SMS message to the trainer. Similarly, the trainer's device 46 may include an SMS receiver for receiving messages from the user. The notification service may also be used by the trainer to notify the user that a new workout is available. Each message may include a list of properties similar to those shown in FIG. 5.

As before, a system 10 in accordance with embodiments of the invention may modify a workout plan in accordance with the user's performance, and may allow the user's device 44 to download the modified workout plan as appropriate.

Method of Operation of the Alternative Embodiment

Referring now to FIG. 6 and FIG. 4, in one embodiment, the trainer may build 48 a workout plan for a specific user and upload 50 it to the system 10. The user may then download 52 the workout plan before starting a training session. The user may then begin 54 training. At this point, a notification may be sent 56 to the trainer to signal the start of the activity.

During the training session, performance-related data may be acquired 58 from the user. As previously discussed, the data may be compared 60 with allowable ranges provided in the workout plan. Repeatedly exceeding the predetermined thresholds may trigger 62 an event that is sent 64 to the trainer. The trainer, based on the event received, may adjust 66 the workout plan and upload 68 the adjusted workout plan to the planning module of the system 10.

The system 10 may then send 70 a notification to the user, via SMS for example, to signal that an update is ready to be downloaded. Upon receipt of the notification, the user may download 72 the new workout plan. The downloaded workout plan may then become the current workout plan.

System and Method of a Third Embodiment

In some embodiments, the roles of the planning module and the trainer may be complementary. Accordingly, a third embodiment may provide a hybrid of the planning module and the trainer. In particular, the third embodiment may act primarily as a facilitator for the trainer (as in the second embodiment), and may switch to the automated workout planning facility (of the first embodiment) in situations where the trainer is unavailable.

More particularly, the third embodiment may operate as follows. When a user begins a workout program, the user's device may send to the trainer a notification, and may wait for a response therefrom. If no response arrives within a certain time, the automatic trainer (of the first embodiment) may be enabled. If during the training session the trainer becomes available, the third embodiment may switch to the human trainer mode (of the second embodiment). Further, if during the training session the trainer leaves, the third embodiment may again switch to the automatic trainer mode (of the first embodiment).

Generic Operating Environment

A machine on which embodiments of the invention may operate may include a generic structure, as shown in FIG. 7. More particularly, a generic computer of the system may be denoted with 80. The computer 80 may be formed by several units connected in parallel to a system bus 82. In detail, one or more microprocessors 84 may control operation of the computer 80. A RAM 86 may be directly used as a working memory by the microprocessors 84, and a ROM 88 may store basic code for a bootstrap of the computer 80.

Peripheral units may be clustered around a local bus 90 by means of respective interfaces. Particularly, a mass memory may include a hard disk 92 and a drive 94 for reading CD-ROMs 96. The computer 80 may further include input devices 98 (for example, a keyboard and a mouse), and output devices 100 (for example, a monitor and a printer). A Network Interface Card (“NIC”) 102 may be used to connect the computer 80 to the network. A bridge unit 104 may interface the system bus 82 with the local bus 90. Each microprocessor 84 and the bridge unit 104 may operate as master agents requesting an access to the system bus 82 for transmitting information. An arbiter 106 may manage the granting of the access with mutual exclusion to the system bus 82.

In any case, embodiments of the invention facilitate automatically and dynamically adapting a user training program according to specific conditions experienced by the user during training. Embodiments of the invention further provide more responsive mechanisms for automated training. Some embodiments facilitate storing a number of different training programs tailored to a number of users and their individual progress needs. As embodiments of the invention may be largely automated, such embodiments may be implemented in a system remote to the user. This feature may accommodate the needs of geographically distant users, such as those that may be traveling for different races, tournaments, competitions, and other events.

In certain embodiments, the system may enable a trainer to remotely monitor users during their training, regardless of where the training is performed. Further, the trainer may remotely monitor and adjust a user's workout based on real-time data. In this manner, a user may be assisted remotely by his or her trainer. 

1. A method for managing an exercise regime, the method comprising: developing a plan for an exercise regime; transmitting the plan to at least one client computer associated with a user; enabling the at least one client computer to acquire performance-related data from the user during execution of the plan; transmitting the acquired data to a server in communication with the at least one client computer; enabling the server to analyze the performance-related data to verify that predetermined expected performance values are reached; enabling the server to modify the plan according to the analysis; and providing the modified plan to the at least one client computer.
 2. The method of claim 1, wherein developing the plan comprises enabling a remote server computer to develop the plan.
 3. The method of claim 1, wherein developing the plan further comprises: building a user profile; determining at least one target value for a performance-related variable for the user; and determining at least one threshold value for an allowable deviation from the at least one target value.
 4. The method of claim 3, wherein enabling the at least one client computer to acquire performance-related data from the user comprises enabling the at least one client computer to acquire a value for the performance-related variable from the user.
 5. The method of claim 4, wherein enabling the server to analyze the performance-related data comprises enabling the server to compare the value acquired from the user with a corresponding target value for the performance-related variable.
 6. The method of claim 5, wherein enabling the server to compare the value with the corresponding target value further comprises enabling the server to compare the value with a corresponding threshold value in the event the value deviates from the corresponding target value.
 7. The method of claim 6, wherein enabling the server to modify the plan comprises enabling the server to modify the plan in the event that the value exceeds the corresponding threshold value.
 8. The method of claim 6, wherein enabling the server to modify the plan further comprises enabling the server to notify the user in the event that the value exceeds the corresponding threshold value.
 9. The method of claim 1, further comprising storing the modified plan to use in developing subsequent plans.
 10. The method of claim 1, wherein developing the plan comprises enabling a trainer to develop the plan.
 11. The method of claim 10, wherein enabling the server to modify the plan comprises enabling the trainer to modify the plan.
 12. The method of claim 10, wherein enabling the server to acquire the performance-related data further comprises enabling the server to transmit the performance-related data to the trainer.
 12. A computer program product for managing an exercise regime, the computer program product comprising: a computer-usable medium having computer-usable program code embodied therein, the computer-usable program code comprising: computer-usable program code for developing a plan for an exercise regime; computer-usable program code for transmitting the plan to at least one client computer associated with a user; computer-usable program code for enabling the at least one client computer to acquire performance-related data from the user during execution of the plan; computer-usable program code for transmitting the acquired data to a server in communication with the at least one client computer; computer-usable program code for enabling the server to analyze the performance-related data to verify that predetermined expected performance values are reached; computer-usable program code for enabling the server to modify the plan according to the analysis; and computer-usable program code for providing the modified plan to the at least one client computer.
 13. The computer program product of claim 12, wherein the computer-usable program code for developing the plan comprises computer-usable program code for enabling a remote server computer to develop the plan.
 14. The computer program product of claim 12, wherein the computer-usable program code for developing the plan further comprises: computer-usable program code for building a user profile; computer-usable program code for determining at least one target value for a performance-related variable for the user; and computer-usable program code for determining at least one threshold value for an allowable deviation from the at least one target value.
 15. The computer program product of claim 12, further comprising computer-usable program code for storing the modified plan to use in developing subsequent plans.
 16. The computer program product of claim 12, wherein the computer-usable program code for developing the plan comprises computer-usable program code for enabling a trainer to develop the plan.
 17. A system for managing an exercise regime, the system comprising: a planning module for developing a plan for an exercise regime; a transmission module for transmitting the plan to at least one client computer associated with a user; a data acquisition module to acquire performance-related data from the user during execution of the plan; a comparator to receive the performance-related data from the data acquisition module and analyze the performance-related data to verify that predetermined expected performance values are reached; and a feedback loop between the comparator and the planning module to enable the planning module to modify the plan in the event the predetermined expected performance values are not reached.
 18. The system of claim 17, wherein the planning module further transmits the modified plan to the at least one client computer.
 19. The system of claim 17, wherein the planning module further stores the modified plan in a database to use in developing subsequent plans.
 20. The system of claim 17, wherein the planning module further notifies the at least one client computer of an imminent change to the plan in the event the predetermined expected performance values are not reached. 